

function generateCompendiumPages(compendium) {
    const pages = [];

    for (const gearType in compendium) {
        let currentPage = `§l${gearType}\n§r`;
        const rarityTiers = compendium[gearType];

        for (const rarity in rarityTiers) {
            const stats = rarityTiers[rarity];
            currentPage += `\n§6${rarity}:\n§r`;

            stats.forEach(stat => {
                currentPage += `- ${stat}\n`;
            });
        }

        pages.push(currentPage.trim());
    }

    return pages;
}

export function showStatCompendium(player) {
    const pages = generateCompendiumPages(statCompendium);

    const book = {
        title: "Stat Compendium",
        author: "RarityForge",
        pages
    };

    player.runCommandAsync(`give @s written_book 1 0 {"title":"${book.title}","author":"${book.author}","pages":${JSON.stringify(book.pages)}}`).catch(e =>
        console.warn(`[StatBook] Failed to give book: ${e}`)
    );
}